package com.info.zhiduoduo.repository.entity.company;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 * 企业基础表
 * </p>
 *
 * @author bob
 * @since 2018-12-23
 */
@Data
@Accessors(chain = true)
@TableName("zdd_company")
public class Company extends Model<Company> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "compid", type = IdType.AUTO)
    private Integer compid;
    /**
     * 企业名
     */
    private String compname;
    /**
     * 企业昵称
     */
    private String compnickname;
    /**
     * 注册手机号
     */
    private String regphone;
    /**
     * 邀请码
     */
    @TableField("invite_code")
    private String inviteCode;
    /**
     * 微信OPENID
     */
    private String openid;
    /**
     * 微信唯一标识
     */
    private String unionid;
    /**
     * 微信名
     */
    private String nickname;
    /**
     * 头像
     */
    private String avatar;
    /**
     * 0未知1男2女
     */
    private Integer sex;
    /**
     * 注册密码
     */
    private String password;
    /**
     * 加密salt
     */
    private String salt;
    /**
     * 社会统一信用代码
     */
    private String creditcode;
    /**
     * 经营具体地址
     */
    private String compaddress;
    /**
     * 开户名
     */
    private String acctbank;
    /**
     * 银行账户
     */
    private String acctno;
    /**
     * 开户行编号
     */
    private String bankno;
    /**
     * 公司电话
     */
    private String telephone;
    /**
     * 联系人名字
     */
    private String contactname;
    /**
     * 联系人电话
     */
    private String contactphone;
    /**
     * 联系具体地址
     */
    private String contactaddress;
    /**
     * 联系具体地址省ID
     */
    private Integer contactprovinceid;
    /**
     * 联系具体地址市ID
     */
    private Integer contactcityid;
    /**
     * 联系具体地址区ID
     */
    private Integer contactareaid;
    /**
     * 企业LOGO
     */
    private String complogo;
    /**
     * 企业网站
     */
    private String compsite;
    /**
     * 企业邮箱
     */
    private String compemail;
    /**
     * 营业执照照片
     */
    private String complicensephoto;
    /**
     * 企业介绍
     */
    private String compintro;
    /**
     * 1：微信 2：后台手动创建
     */
    private Integer regfrom;
    /**
     * 发票邮寄地址
     */
    private String invoiceaddress;
    /**
     * 行业分类id
     */
    private Integer tradecategoryid;
    /**
     * 员工数量
     */
    @TableField("staff_count")
    private Integer staffCount;
    /**
     * 营业额
     */
    private BigDecimal turnover;
    /**
     * 企业总部地址
     */
    private String headquarters;
    /**
     * 公司性质
     */
    @TableField("comp_property")
    private String compProperty;
    /**
     * 核心业务
     */
    @TableField("core_business")
    private String coreBusiness;
    /**
     * 发票类型 1:普票 2:专票
     */
    @TableField("invoice_type")
    private Integer invoiceType;

    @ApiModelProperty("智零工开票内容")
    @TableField("invoice_scope_odd")
    private String invoiceScopeOdd;

    @ApiModelProperty("智众包开票内容")
    @TableField("invoice_scope")
    private String invoiceScope;

    /**
     * 是否开通撮合业务 1:否 2:是
     */
    @TableField("crowdsource_project_match;")
    private Integer crowdsourceProjectMatch;
    /**
     * 智众包模式是否开启 1：否 2：开启
     */
    @TableField("intel_crowdsource")
    private Integer intelCrowdsource;
//    /**
//     * 智众包城市
//     */
    @TableField("crowdsource_city")
    private Integer crowdsourceCity;
    /**
     * 1: 代付模式 2：承包模式
     */
    @TableField("crowdsource_type")
    private Integer crowdsourceType;
    /**
     * 智众包阶梯式费率 1:否 2:开启
     */
    @TableField("crowdsource_stepped")
    private Integer crowdsourceStepped;
    /**
     * 项目服务费率
     */
    @TableField("project_service_rate")
    private Double projectServiceRate;
    /**
     * 基础税率-智众包
     */
    @TableField("base_tax_rate")
    private Double baseTaxRate;
    /**
     * 基础税率-智零工
     */
    @ApiModelProperty("智零工基础税率")
    @TableField("base_tax_rate_odd")
    private Double baseTaxRateOdd;
    /**
     * 年度25万以下税率
     */
    @TableField("low_tax_rate")
    private Double lowTaxRate;
    /**
     * 年度25万-75万税率
     */
    @TableField("high_tax_rate")
    private Double highTaxRate;
    /**
     * 是否开启保证金 1:否 2:是
     */
    @TableField("deposit_flag")
    private Integer depositFlag;
    /**
     * 保证金比例
     */
    @TableField("deposit_rate")
    private Double depositRate;
    /**
     * 保证金返回周期(1-6月)
     */
    @TableField("return_period")
    private Integer returnPeriod;
    /**
     * 第二档月度金额
     */
    @TableField("secondary_monthly_amount")
    private BigDecimal secondaryMonthlyAmount;
    /**
     * 第二档保证金比例
     */
    @TableField("secondary_deposit_rate")
    private Double secondaryDepositRate;
    /**
     * 众包成本合伙人id
     */
    @TableField("crowdsource_partner_id")
    private Integer crowdsourcePartnerId;
    /**
     * 1.注册未认证 2认证中 3认证失败 4已认证 5冻结 6拉黑
     */
    private Integer state;
//
//    /**
//     * 运营主体
//     */
    @TableField("party_id")
    private Integer partyId;

    /**
     * 是否接收公告 0：正常 1：不接受
     */
    @TableField("notice_flag")
    private Integer noticeFlag;
    private Date createtime;
    @TableField(update = "now()")
    private Date updatetime;


    @TableField(exist = false)
    private String authReason;

    /**
     * 是否开通PC企业：0：关，1.开
     */
    @TableField("whether_open")
    private Integer whetherOpen;

    /**
     * 金蝶客户编码
     */
    @TableField("kingdee_customer_code")
    private String kingdeeCustomerCode;
    /**
     * 特殊费率标记 0:否 1:是
     */
    @TableField("special_rate_flag")
    private Integer specialRateFlag;
    /**
     * 企业限额开关 0：关，1：开
     */
    @TableField("quota_flag")
    private Integer quotaFlag;

    /**
     * 是否友好企业标识(0:未标记,1:友好)
     */
    @TableField("friendly_state")
    private Integer friendlyState;

    /**
     * 是否开通委托接单功能(0:否,1:是)
     */
    @TableField("entrusted_receipt_status")
    private Integer entrustedReceiptStatus;

    /**
     * 是否代理操作账户标识(0:否,1:是)
     */
    @TableField("agent_operation_account")
    private Integer agentOperationAccount;

    /**
     * 是否自动冻结(0:是,1否)
     */
    @TableField("auto_freeze")
    private Integer autoFreeze;
    /**
     * 客服昵称
     */
    @TableField("customer_service_nickname")
    private String customerServiceNickname;
    /**
     * 客服电话
     */
    @TableField("customer_service_phone")
    private String customerServicePhone;

    /**
     * 是否开通智零工(0:关（默认），1:开启)
     */
    @TableField("open_odd_job")
    private Integer openOddJob;

    @ApiModelProperty("是否可查看创客可用额度（0否，1是）")
    private Integer viewMakerQuota;

    /**
     * 自然人邀请码
     */
    @TableField("natural_person_invitation_code")
    private String naturalPersonInvitationCode;

    /**
     * '有限责任公司 0否 1是'
     */
    @TableField("limited_liability_company")
    private Integer limitedLiabilityCompany;

    @ApiModelProperty("是否开通 0：否（默认）， 1：是")
    @TableField("open_zdd")
    private Boolean openZdd;


    @ApiModelProperty("合同状态 1未上传 2无效 3 有效")
    @TableField("contract_status")
    private int contractStatus;

    @Override
    protected Serializable pkVal() {
        return this.compid;
    }

}
